import Vue from 'vue'
import App from './App.vue'
import router from './router'
import singleSpaVue from 'single-spa-vue';

console.log(12323)


const appOptions = {
  el: '#vue', //挂载到父应用的id为vue的标签中
  router,
  render: h => h(App)
}

const vueLifeCycle = singleSpaVue({
  Vue,
  appOptions
});


// 如果是父应用引用
if(window.singleSpaNavigate){
  __webpack_public_path__ = 'http://localhost:10000/'
}
// 如果没有被引用，正常启动应用
if(!window.singleSpaNavigate){
  delete appOptions.el;
  new Vue(appOptions).$mount('#app');
 }


// 子应用必须导出生命周期bootstrap、mount、unmount
// 这就是协议接入，定好了协议后，父应用就是调用这些方法
export const bootstrap = vueLifeCycle.bootstrap;
export const mount = vueLifeCycle.mount;
export const unmount = vueLifeCycle.unmount;
export default vueLifeCycle;

// 还需要将子应用打包成一个个lib去给父应用使用，就需要去vue.config.js中配置

// 还需在router中配置一个 路由基座，例如：
// 在router==》index.js中
// const router = new VueRouter({
//   mode: 'history',
//   base: 'vue',
//   routes
// })
